﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Collections;

namespace BioCompEx3
{
    enum NeuronType{
        inputNeuron,
        middleNeuron,
        outputNeuron,
        biasNeuron
    };

    //Neural network's building block
    class Neuron
    {
        public double dOutputValue; // The neuron's output value
        public ArrayList eEdges; // Array of edges that are links to other neurons
        public int iIndex; // The current neuron index in the neurons array
        public NeuronType ntType; // The neuron type (Input, Middle, Output, Bias

        //Constructor
        public Neuron(float outputValue, int index, NeuronType neurontype)
        {
            dOutputValue = outputValue;
            iIndex = index;
            eEdges = new ArrayList();
            ntType = neurontype;
        }

        //Adds an edge to the array
        public void addEdge(double weight, int targetNeuronIndex)
        {
            eEdges.Add(new Edge(targetNeuronIndex));
        }
    }
}
